
/*
 * 公用变量
 */
var map;
var manager;
var markerArray=[];//记录Marker数据
var focusMarker;//当前选中的Marker

$(document).ready(function(){
	
     //检查浏览器兼容性
     if (GBrowserIsCompatible()) {
    	 
    	//document卸载时触发
    	$(window).unload(function (){
	        $('.').unbind();
	        GUnload();
    	}); 
    	
    	map = new GMap2(document.getElementById("map"));
    	initGMarkerManager(map);
		//初始地图类型
		map.setMapType(G_NORMAL_MAP);
		//小型伸缩控制器
		map.addControl(new GSmallMapControl());
		//地图类型控制器    
		map.addControl(new GMapTypeControl());
		//添加缩略图
        map.addControl(new GOverviewMapControl()); 
        //激活地图的双击放大功能和支持滑轮缩放
//        map.enableDoubleClickZoom(); 
        //中国的经纬度以及地方放大倍数
		map.setCenter(new GLatLng(36.94, 106.08), 4);
		
		//开启滚轮伸缩效果－－鼠标滚轮向前滚放大地图，反之缩小
		map.enableScrollWheelZoom();
		
		createContextMenu(map);
		
		markerInit(map);
		
		//单击事件句柄
		GEvent.addListener(map, "click", function(marker, point) {
			if (marker) {
				if(marker instanceof GMarker){
					//map.removeOverlay(marker);
					var lng = marker.getLatLng().lng();
					var lat = marker.getLatLng().lat();
					$.ajax({
			          	url: 'company!loadByLatLng.j',
			          	data: "lng="+lng+"&lat="+lat,
			          	type: 'post',
			   			success: function(msg){
			   				var o =  jQuery.parseJSON(msg.result);
			   				//标记不存在，新建
			   				if(o == null){
			   					marker.openInfoWindowTabsHtml(showNewWindow(msg.lng,msg.lat,msg.options));
			   					
			   					focusMarker = marker;
			   				}
			   				//标记存在，修改
			   				else{
				   				var name = o.name;
				   				var address = o.address;
				   				var phone = o.phone_no;
				   				var lng = o.longitude;
				   				var lat = o.latitude;
				   				var id = o.id;
				   				marker.openInfoWindowTabsHtml(showEditWindow(name,address,phone,lng,lat,id));
				   				
				   				focusMarker = marker;
			   				}
			   			}
					});
				}
		    } 
			else {
				marker = new GMarker(point);
				map.addOverlay(marker);
				markerArray.push(marker);//入数组
		    }
		});
		
		
		//在指定点以指定标签创建标记
		function createNewMarker(point, number) {
		    var marker = new GMarker(point);
	        GEvent.addListener(marker, "click", function() {
	        	marker.openInfoWindowTabsHtml();
	        });
		    return marker;
		}
		
		//edit
		function showEditWindow(name,address,phone,lng,lat,id) {
			var html="<div align=left>公司名称：<input type='text' id='name' value="+name+" /></div>"
				+"<div align=left>公司地址：<input type='text' id='address' value="+address+" /></div>"
				+"<div align=left>联系电话：<input type='text' id='phone_no' value="+phone+" /></div>"
				+"<div align='center'><button type='button' align='left' onclick='modify();'>修改</button><button type='button' onclick='remove()'>删除</button> </div>"
				+"<table><tr><td><input type='hidden' id='id' value="+id+" ></td></tr>"
				+"<tr><td><input type='hidden' id='lng' value="+lng+" > </td></tr>"
				+"<tr><td><input type='hidden' id='lat' value="+lat+" > </td></tr></table>";
			//TAB
			var infoTabs = [
			    new GInfoWindowTab("公司概况", html),
			    new GInfoWindowTab("公司坐标", "经度："+lng+"\n 维度："+lat)
			];
			
			return infoTabs;
		}
		//new
		function showNewWindow(lng,lat,options) {
			var html="<div align=left>公司名称：<input type='text' id='name'/></div>"
				+"<div align=left>公司法人：<input type='text' id='key_man'/></div>"
				+"<div align=left>公司地址：<input type='text' id='address' /></div>"
				+"<div align=left>联系电话：<input type='text' id='phone' /></div>"
				+"<div align=left>公司网址：<input type='text' id='website' /></div>"
				+"<div align=left>主营业务：<textarea id='major_busi' style=' height: 127px;width: 257px;'></textarea></div>"
				+"<div align=left>公司级别：<input id='radio1' type='radio' name='level' value='4' checked/>总公司"
				+"<input id='radio2' type='radio' name='level' value='6'/>分公司"
				+"<input id='radio3' type='radio' name='level' value='8'/>电厂</div>"
				+"<div align=left>上级公司：<select id='up_id'>"+options+"</select>"
				+"<div align='center'><button type='button' align='left' onclick='add();'>添加</button>"
				+"<table><tr><td><input type='hidden' id='company_id' ></td></tr>"
				+"<tr><td><input type='hidden' id='lng' value='"+lng+"' > </td></tr>"
				+"<tr><td><input type='hidden' id='lat' value='"+lat+"' > </td></tr></table>";
			var infoTabs = [
			    new GInfoWindowTab("公司信息", html)
			];
			
			return infoTabs;
		}
		
		//在刚进入地图时初始化所有marker
		function markerInit(map,name) {
			//第一次进入才初始化所有marker
			var markers = new Array();
			$.ajax({
	          	url:  name == null?'company!loadAllInfos.j':'company!loadAllInfosByName.j',
	          	data: name == null?'':'name='+name,
	          	type: 'post',
	   			success: function(msg){
	   				var o =  jQuery.parseJSON(msg.result);
	   				if(o == null){
	   					return;
	   				}
	   				//
	   				else{
	   					for(var i=0;i<o.length;i++){
	   						var lng = o[i].longitude;
			   				var lat = o[i].latitude;
			   				marker = new GMarker(new GLatLng(lat,lng));
			   				//在地图上添加标注点
			   				manager.addMarker(marker,o[i].level);
			   				manager.refresh();
							
							markerArray.push(marker);//入数组
	   					}
	   				}
	   			}
			});
		}
     }
     else{
         alert('你使用的浏览器不支持 Google Map!');    
     }
});

function initGMarkerManager(map){
	manager = new GMarkerManager(map);
}

/*
 * zhouf
 * 2011-05-22
 * 注销
 */
function logout(path){
	if(!confirm( "您确定要注销吗?")) { 
	}else{
		parent.document.location = "http://localhost:9081/"+path+"/logout.j";
	}
}

function doStat(path){
	showModalDialog(path+"/jsp/electric/stat.jsp","统计分析",'dialogWidth:1000px;dialogHeight:550px;dialogLeft:200px;dialogTop:150px;center:yes;help:yes;resizable:yes;status:yes')
	
}
